import string
import urllib.request

from urllib.parse import quote


import bs4
def nospace(world):
    world.strip().replace(" ", "").replace("\n", "")

city = input("请输入一个城市：")
code = {
    '北京': '530',
    '上海': '538',
    '广州': '763',
    '深圳': '765',
    '天津': '531',
    '武汉': '736',
    '西安': '854',
    '成都': '801',
    '沈阳': '599',
    '南京': '635',
    '杭州': '653',
    '苏州': '639',
    '重庆': '551',
    '长沙': '749',
    '厦门': '682',
    '南昌': '691'
}
city = code[city]
jobName=input("请输入相关岗位：")
url="https://sou.zhaopin.com/?jl="+city+"&kw="+jobName+"&p=1"
url=quote(url,safe=string.printable)
#print(url)
#发送http请求
resp=urllib.request.urlopen(url)
content=resp.read().decode('utf-8')

# 通过
soup=bs4.BeautifulSoup(resp, "lxml")
jobList=soup.select(".joblist-box__item")
job_list=[]
for job in jobList:
    job_dic={}
    # get_text() 用来获取所有文本内容，以字符串列表方式显示
    # getText() 获取所有文本内容，拼接成一个字符串
    job_name=job.select(".jobinfo__name")[0].get_text()
    #工资
    job_sal=job.select(".jobinfo__salary")[0].getText()

    job_sal=nospace(job_sal)
    if '天' in job_sal:
        job_sal=int(job_sal.split("-")[0]*30)
    elif '千' in job_sal:
        job_sal=int(job_sal.split("千")[0])*100
    elif '万' in job_sal:
        job_sal=int(job_sal.split("万")[0])*1000
    else:
        job_sal=5000
    company_name=nospace(job.select(".companyinfo__name")[0].get_text())
    job_msg=job.select(".jobinfo__other-info-item")
    #print(job_msg[0].getText)
    #print(job.msg[0].get_text())

    #print(job_name)
    job_place=nospace(job_msg[0].getText())

    job_exp=nospace(job_msg[1].getText())

    job_edu=nospace(job_msg[2].getText())

    job_dic['job_name']=job_name
    job_dic['job_sal']=job_sal
    job_dic['job_exp']=job_exp
    job_dic['job_edu']=job_edu
    job_dic['company_name']=company_name

    job_dic['job_place']=job_place[0:2]
    job_list.append(job_dic)
for i in job_list:
    print(i)
